package com.platform.entity;

import com.fasterxml.jackson.annotation.JsonFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;


/**
 * 实体 账单流水
 * 表名 api_amount_bill
 *
 * @author zhurusen
 * @email 524227263@qq.com
 * @date 2018-05-11 23:06:40
 */
public class ApiAmountBillVo implements Serializable {
    private static final long serialVersionUID = 1L;

    private Long id;
    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;
    /**
     * 会员id
     */
    private Long userId;
    private UserInfo userInfo;
    /**
     * 1 支出 2 收入
     */
    private Integer type;
    //备注
    private String remark;
    /**
     * 收益对象
     */
    private Long mouldId;
    /**
     * 消费类型 1 live 2 wake 3 emotion 4 guide 5 circleReward 6 videoReward 7 videoPay 8 indexReward  9 wxPay 10 alipay 11 connection
     */
    private String mouldName;

    private UserInfo mouldUserInfo;

    /**
     * 金额
     */
    private BigDecimal amount;

    /**
     * 渠道类型
     */
    private String channel;
    /**
     * 商户订单号
     */
    private String billNo;
    /**
     * 订单标题
     */
    private String title;
    /**
     * 账单状态 1 待付款 2 失败 3 支付成功
     */
    private Integer status = 3;


    public String getChannel() {
        return channel;
    }

    public ApiAmountBillVo setChannel(String channel) {
        this.channel = channel;
        return this;
    }

    public String getBillNo() {
        return billNo;
    }

    public ApiAmountBillVo setBillNo(String billNo) {
        this.billNo = billNo;
        return this;
    }

    public Integer getStatus() {
        return status;
    }

    public ApiAmountBillVo setStatus(Integer status) {
        this.status = status;
        return this;
    }


    public UserInfo getUserInfo() {
        return userInfo;
    }

    public ApiAmountBillVo setUserInfo(UserInfo userInfo) {
        this.userInfo = userInfo;
        return this;
    }

    public UserInfo getMouldUserInfo() {
        return mouldUserInfo;
    }

    public ApiAmountBillVo setMouldUserInfo(UserInfo mouldUserInfo) {
        this.mouldUserInfo = mouldUserInfo;
        return this;
    }

    public BigDecimal getAmount() {
        return amount;
    }

    public ApiAmountBillVo setAmount(BigDecimal amount) {
        this.amount = amount;
        return this;
    }

    /**
     * 设置：
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * 获取：
     */
    public Long getId() {
        return id;
    }

    /**
     * 设置：创建时间
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * 获取：创建时间
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * 设置：会员id
     */
    public void setUserId(Long userId) {
        this.userId = userId;
    }

    /**
     * 获取：会员id
     */
    public Long getUserId() {
        return userId;
    }

    /**
     * 设置：1 支出 2 收入 3提现
     */
    public void setType(Integer type) {
        this.type = type;
    }

    /**
     * 获取：1 支出 2 收入 3提现
     */
    public Integer getType() {
        return type;
    }

    /**
     * 设置：备注
     */
    public void setRemark(String remark) {
        this.remark = remark;
    }

    /**
     * 获取：备注
     */
    public String getRemark() {
        return remark;
    }

    /**
     * 设置：
     */
    public void setMouldId(Long mouldId) {
        this.mouldId = mouldId;
    }

    /**
     * 获取：
     */
    public Long getMouldId() {
        return mouldId;
    }

    /**
     * 设置：
     */
    public void setMouldName(String mouldName) {
        this.mouldName = mouldName;
    }

    /**
     * 获取：
     */
    public String getMouldName() {
        return mouldName;
    }

    /**
     * 设置：主题
     */
    public void setTitle(String title) {
        this.title = title;
    }

    /**
     * 获取：主题
     */
    public String getTitle() {
        return title;
    }
}
